
import java.util.Calendar;
import javafx.beans.property.SimpleStringProperty;

/*
 * To change this template, choose Tools | Templates and open the template in
 * the editor.
 */
/**
 *
 * @author enrico
 */
public class PrestitiModel {

  private final SimpleStringProperty persona;
  private final SimpleStringProperty data;
  private final SimpleStringProperty titolo;
  private final SimpleStringProperty giorni;
  private final int id_libro;
  private final int giorni_prestito;
  
  private final SimpleStringProperty ritorno;
  private final SimpleStringProperty Durata;

  public PrestitiModel(String nome, String cognome, String titolo, String data, String idlib, String durata) {
    this.persona = new SimpleStringProperty(nome + " " + cognome);
    this.id_libro = Integer.valueOf(idlib);
    this.titolo = new SimpleStringProperty(titolo);
    this.giorni_prestito = Integer.valueOf(durata);
    
    Calendar now = Calendar.getInstance();
    
    now.set(now.get(Calendar.YEAR),now.get(Calendar.MONTH)+1,now.get(Calendar.DAY_OF_MONTH));
    long nowMillis = now.getTimeInMillis();
    String[] aaaammgg = data.split("-");
    this.data = new SimpleStringProperty(aaaammgg[2] + "/" + aaaammgg[1] + "/" + aaaammgg[0]);

    Calendar prest = Calendar.getInstance();
    prest.set(Integer.valueOf(aaaammgg[0]), Integer.valueOf(aaaammgg[1]), Integer.valueOf(aaaammgg[2]));
    long beforeMillis = prest.getTimeInMillis();
    long diff = nowMillis - beforeMillis;
    long diffDays = (diff / (24 * 60 * 60 * 1000));
    this.giorni = new SimpleStringProperty(String.valueOf(diffDays)+" / "+this.giorni_prestito);
    
    Calendar prestitoRitorno = Calendar.getInstance();
    prestitoRitorno.add(Calendar.DAY_OF_MONTH, this.giorni_prestito);
    int mese = prestitoRitorno.get(Calendar.MONTH); // da 0
    int anno = prestitoRitorno.get(Calendar.YEAR);
    int giorno = prestitoRitorno.get(Calendar.DATE);
    this.ritorno = new SimpleStringProperty(giorno+"/"+(mese + 1)+"/"+anno);
    
    this.Durata = new SimpleStringProperty();
    if (durata==null) this.Durata.set("-");
    else if (durata.equals("0")) this.Durata.set("-");
          else this.Durata.set(String.valueOf(durata));
  }

  public String getPersona() {
    return persona.get();
  }

  public void setPersona(String value) {
  }

  public String getTitolo() {
    return titolo.get();
  }

  public void setTitolo(String value) {
  }

  public String getGiorni() {
    return giorni.get();
  }

  public void setGiorni(String value) {
  }
  public String getData() {
    return data.get();
  }
  public void setData(String value) {
    
  }
  
  public String getDurata() {
    return Durata.get();
  }
  public void setDurata(String value) {
    
  }
  
  public String getRitorno() {
    return ritorno.get();
  }
  
  public int getID() {
    return id_libro;
  }
}
